package com.xoa.controller.guideGoal;

import com.xoa.model.guideGoal.GuideGoalType;
import com.xoa.service.guideGoal.GuideGoalTypeService;
import com.xoa.util.ToJson;
import com.xoa.util.treeUtil.TreeGirdNode;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;

import javax.servlet.http.HttpServletRequest;

/**
 * Created by 张丽军 on 2017/7/28.
 * 数据接口控制器
 */
@RestController
@RequestMapping("/dljSupervisionType")
public class GuideGoalTypeController {
    @Autowired
    GuideGoalTypeService guideGoalTypeService;



    /**
     * 创建作者:   张丽军
     * 创建日期:   2017年7月28日 下午15:30:00
     * 方法介绍:   督办分类详情查询根据sid(**********)
     * 参数说明:   @param sid
     * 参数说明:   @return
     * @param request
     * @param sid
     * @return
     */
    @ResponseBody
    @RequestMapping("/getSupervisionTypeDetail")
    public ToJson<GuideGoalType> getSupervisionTypeDetail(HttpServletRequest request, Integer sid){
        return guideGoalTypeService.getSupervisionTypeDetail(request,sid);
    }

    /**
     * 创建作者:   张丽军
     * 创建日期:   2017年7月29日 上午10:30:00
     * 方法介绍:   督办分类修改接口(*********)
     * @param request
     * @param guideGoalType
     * @return
     */
    @ResponseBody
    @RequestMapping("/updateSupervisionType")
    public ToJson<GuideGoalType> updateSupervisionType(HttpServletRequest request, GuideGoalType guideGoalType){
        return guideGoalTypeService.updateSupervisionType(request, guideGoalType);
    }
    /**
     * 创建作者:   张丽军
     * 创建日期:   2017年7月29日 上午10:30:00
     * 方法介绍:   督办分类新建接口(**********)
     * @param request
     * @param guideGoalType
     * @return
     */
    @ResponseBody
    @RequestMapping("/addSupervisionType")
    public ToJson<GuideGoalType> addSupervisionType(HttpServletRequest request, GuideGoalType guideGoalType){
    	if(guideGoalType.getParentId()==-1){
    		guideGoalType.setParentId(0);
    	}
        return guideGoalTypeService.addSupervisionType(request, guideGoalType);
    }

    /**
     ** 创建作者:   张丽军
     * 创建日期:   2017年7月29日 上午10:30:00
     * 方法介绍:   督办分类删除接口(***********)
     * @param sid
     * @return
     */
    @ResponseBody
    @RequestMapping("/deleteSupervisionTypeBySid")
    public ToJson<GuideGoalType> deleteSupervisionTypeBySid(Integer sid){
        return guideGoalTypeService.deleteSupervisionTypeBySid(sid);
    }

    /**
     ** 创建作者:   张丽军
     * 创建日期:   2017年7月29日 上午10:30:00
     * 方法介绍:   督办分类查询列表接口(*********)
     * @param guideGoalType
     * @param request
     * @return
     */
    @ResponseBody
    @RequestMapping("/getSupervisionTypeList")
    public ToJson<GuideGoalType> getSupervisionTypeList(GuideGoalType guideGoalType, HttpServletRequest request, Integer page, Integer pageSize, Boolean useFlag){
        return guideGoalTypeService.getSupervisionTypeList(guideGoalType,request,page,pageSize,useFlag);
    }
    /**
     ** 创建作者:   张丽军
     * 创建日期:   2017年7月29日 上午10:30:00
     * 方法介绍:   督办任务分类管理(树形结构)(*************)
     * @param
     * @param request
     * @return
     */
    @ResponseBody
    @RequestMapping("/getSupTypeList")
    public ToJson<TreeGirdNode> getSupTypeList(HttpServletRequest request){
        return guideGoalTypeService.getSupTypeList(request);

    }

    /**
     * 创建作者：张丽军
     * 创建日期：2017-08-03
     * 方法介绍：督办新建里下拉列表（分类名称下拉）（*************）
     * @param request
     * @param guideGoalType
     * @return
     */

    @ResponseBody
    @RequestMapping("/getSupNameSelect")
    public ToJson<GuideGoalType> getSupNameSelect(HttpServletRequest request, GuideGoalType guideGoalType){
        return guideGoalTypeService.getSupNameSelect(request, guideGoalType);
    }

}

